// 确保window和navigator对象的兼容性
if (typeof window !== 'undefined') {
  // 确保navigator对象存在
  window.navigator = window.navigator || {};

  // 确保userAgent存在
  window.navigator.userAgent = window.navigator.userAgent || '';

  // 确保platform存在
  window.navigator.platform = window.navigator.platform || '';

  // 确保__proto__存在
  if (!window.navigator.__proto__) {
    window.navigator.__proto__ = {};
  }

  // 处理__android属性
  if (window.navigator.__proto__ && window.navigator.__proto__.__android === undefined) {
    window.navigator.__proto__.__android = null;
  }

  // 确保appVersion存在
  window.navigator.appVersion = window.navigator.appVersion || '';
}

// 在确保兼容性后导入QRCode
import QRCode from 'qrcodejs2';

// 安全包装QRCode创建函数
export function createQRCode(elementId, options) {
  try {
    // 确保DOM元素存在
    const element = document.getElementById(elementId);
    if (!element) {
      console.error(`Element with id '${elementId}' not found`);
      return null;
    }

    // 处理可能发生的错误
    return new QRCode(element, options);
  } catch (error) {
    console.error('Error creating QRCode:', error);
    return null;
  }
}

export default {
  install(app) {
    // 添加到Vue 3全局属性中
    app.config.globalProperties.$createQRCode = createQRCode;
  }
}; 